    LIST P=16F877A
	RADIX HEX
	INCLUDE <P16F877A.INC>

		ORG	4
		goto inicio

BOTONES	movlw	b'00000010'
		movwf	PORTC		; Se enciende led rojo
        movlw	b'00000001'
		movwf	PORTC		; Se enciende led verde
		movlw	b'10000000'
		movwf	PORTD		; Se envia senal de la maquina
		RETURN


ledendred	movlw	b'00000000'
		    movwf	PORTC		; Se enciende led verde
	     	movlw	b'00000000'
	    	movwf	PORTD		; Maquina apagada
            goto    ciclo

ledendgreen	movlw	b'00000000'
		    movwf	PORTC		; Se enciende led verde
	     	movlw	b'00000000'
	    	movwf	PORTD		; Maquina apagada
            goto    ciclo




inicio	bsf	STATUS,RP0
		bcf	STATUS,RP1	; Seleccion banco 1
		movlw	b'00000011'	; RB0 y RB1 como entradas
		;movlw	0xFF
		movwf	TRISB
		movlw	0x00		; Configuracion puerto C y D
		movwf	TRISC		; como salidas
		movwf	TRISD		
		clrf	PORTC		; Limpiar los puertos de salida
		clrf	PORTD
		bcf	STATUS,RP0	; Seleccion del banco 0
        goto    BOTONES

ciclo	btfss	PORTB,RB0	; Revisar RBO
		goto	ledendred		; Si RB0 = 0 apaga LED Rojo
		btfss	PORTA,RB1	; Si RB1 = 0
		goto	ledendgreen		; Se enciende el LED rojo
		CALL	BOTONES		; Se invoca subrutina enceder LEDS verde y rojo
		END
